﻿using System;
using Library.Collections.Generic;
using INDEX = System.UInt64;

namespace Library.Collections.Specialized
{
    public interface IDictionaryList : IDictionaryVectorReadOnly, IDictionary, IList
    {
        bool Add(object key, object value, out object index);

        bool Insert(object index, object key, object value);
    }

    public interface IDictionaryList<TKey, TValue> : IDictionaryVectorReadOnly<TKey, TValue>, IDictionary<TKey, TValue>, IList<Tuple<TKey, TValue>>
    {
        bool Add(TKey key, TValue value, out INDEX index);

        bool Insert(INDEX index, TKey key, TValue value);
    }
}
